
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';

import 'checking_widget.dart';
import 'date_picker.dart';



class CheckingCalendar extends StatefulWidget {
  @override
  _CheckingCalendarState createState() => _CheckingCalendarState();
}

class _CheckingCalendarState extends State<CheckingCalendar>
    with TickerProviderStateMixin {
  // 开始时间默认索引
  int initialItem = 0;

  // 开始时间被选中时间索引
  int onSelectedValue = 0;

  @override
  void initState() {
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.white,
      body: Stack(
        children: [
          // 标题
          CheckingWidget()
              .buildCheckingAppBar(context, onTapSignStatisticsExport),
          CheckingWidget().buildSignStatisticsContainer(context, [
            // 我的考勤痛统计
            CheckingWidget()
                .buildSignStatisticsHeader("2021-04", false, onTapDateFilter),
            // 考勤日历
            DatePickerDialog(
              initialDate: DateTime.now(),
              firstDate: DateTime(2020),
              lastDate: DateTime(2030),
              onDateChanged: onDateChanged,
              // 0：无状态，1：正常考勤  2：异常考情，迟到，早退，若不满一个月，
              // 日历会自动已0补满一个月
              checking: [
                0,
                0,
                1,
                2,
              ],
            ),
            // 某一天考勤详细情况
            CheckingWidget().buildSignStatisticOfOneDay(),

            InkWell(
              onTap: () => {
                showDatePicker(
                  context: context, //上下文对象
                  initialDate: DateTime.now(), //初始化显示的日期
                  firstDate: DateTime(2019),
                  lastDate: DateTime(2030),
                )
              },
              child: Text("原型"),
            )
          ]),
        ],
      ),
    );
  }

  /// 考勤统计日历中，被选中的日期，请求api，获取当日考勤详情情况
  void onDateChanged(DateTime value) {
    print("onDateChanged:${value.year}-${value.month}-${value.day}");
  }

  @override
  void dispose() {
    super.dispose();
  }

  onTapDateFilter() {}

  onTapSignStatisticsExport() {}
}
